package com.smile.model.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.ToString;

import java.io.Serializable;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.time.LocalDateTime;

@Data
@ToString
@TableName("feisuan_airport")
public class FeisuanAirport implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * 主键id
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @TableField("organization_id")
    private Long organizationId;

    /**
     * 机场名称
     */
    @TableField("airport_name")
    private String airportName;

    /**
     * 经度
     */
    @TableField("longitude")
    private BigDecimal longitude;

    /**
     * 纬度
     */
    @TableField("latitude")
    private BigDecimal latitude;

    /**
     * 机场图片地址
     */
    @TableField("image_url")
    private String imageUrl;

    /**
     * 机场状态
     */
    @TableField("status")
    private Integer status;

    /**
     * 机场编号
     */
    @TableField("gateway_sn")
    private String gatewaySn;

    /**
     * 机场描述
     */
    @TableField("description")
    private String description;

    /**
     * ip地址
     */
    @TableField("ip_address")
    private String ipAddress;

    /**
     * 视频地址
     */
    @TableField("video_address")
    private String videoAddress;

    /**
     * 风速阈值
     */
    @TableField("wind_speed_threshold")
    private BigDecimal windSpeedThreshold;

    /**
     * 降雨阈值
     */
    @TableField("rainfall_threshold")
    private BigDecimal rainfallThreshold;

    @TableField("gateway")
    private String gateway;

    @TableField("total_task_time")
    private Long totalTaskTime;

    @TableField("total_task_count")
    private Long totalTaskCount;

    @TableField("total_task_distance")
    private Long totalTaskDistance;

    /**
     * 创建时间
     */
    @TableField("create_time")
    private LocalDateTime createTime;

    /**
     * 更新时间
     */
    @TableField("modify_time")
    private LocalDateTime modifyTime;

    /**
     * 用户id
     */
    @TableField("user_id")
    private Long userId;

    /**
     * 删除状态
     */
    @TableField("delete_status")
    private Boolean deleteStatus;

    @TableField("address")
    private String address;

    @TableField("device_model_key")
    private String deviceModelKey;

    @TableField("firmware_version")
    private String firmwareVersion;

    @TableField("firmware_upgrade_status")
    private String firmwareUpgradeStatus;

    @TableField("last_maintain_type")
    private Integer lastMaintainType;

    /**
     * {"0":"无保养","1":"有保养"}
     */
    @TableField("maintain_state")
    private Integer maintainState;

    /**
     * 上一次保养时间
     */
    @TableField("last_maintain_time")
    private Long lastMaintainTime;

    /**
     * 上一次保养时飞行架次
     */
    @TableField("last_maintain_flight_sorties")
    private Integer lastMaintainFlightSorties;


    /**
     * 安全离场高度
     */
    @TableField("safe_exit_altitude")
    private Integer safeExitAltitude;



    /**
     * 飞行作业高度
     */
    @TableField("flight_operation_altitude")
    private Integer flightOperationAltitude;


    /**
     * 返航高度
     */
    @TableField("return_altitude")
    private Integer returnAltitude;


    /**
     * 失联动作
     */
    @TableField("missing_action")
    private Integer missingAction;

    /**
     * 飞行状态
     */
    @TableField("flight_status")
    private Integer flightStatus;

}
